package com.mixsmart.core.dao;

import java.util.ArrayList;
import java.util.HashMap;

import com.mixsmart.core.bean.entity.IEntityBean;

/**
 * 保存 DAO接口
 * @author lmq
 * @version 1.0
 * @since JDK版本大于等于1.6
 * 2015年12月21日
 */
public interface ISaveDao {

	/**
	 * 保存实体对象
	 * @param bean 实体对象
	 * @return 成功返回：true；否则返回：false
	 */
	public boolean saveObj(IEntityBean bean);
	
	/**
	 * 批量保存
     * @param beans 实体对象集合
     * @return 成功返回：true；否则返回：false
	 */
	public boolean saveObj(ArrayList<? extends IEntityBean> beans);
	
	/**
	 * 保存或更新数据
	 * @param bean 实体对象
	 * @return 成功返回：true；否则返回：false
	 */
	public boolean saveOrUpdateObj(IEntityBean bean);
	
	/**
	 * 插入数据
	 * @param sql 插入SQL语句
	 * @param params 参数
	 * @return 成功返回：true；否则返回：false
	 */
	public boolean insertSql(String sql, HashMap<String, Object> params);
	
	/**
	 * SQL语句根据参数过滤后，插入数据
	 * @param sql 插入SQL语句
	 * @param params 参数
	 * @return 成功返回：true；否则返回：false
	 */
	public boolean insertSqlFilter(String sql, HashMap<String, Object> params);
	
}
